home *** CD-ROM | disk | FTP | other *** search
-
- MIDI Packet Master © 1993 WareSoft All rights reserved
- by Antonio J. Pomar Rosselló
-
-
-
- DISTRIBUTION
-
- This program is FreeWare. The program can be freely distributed provided
- that all the associated files are distributed with the program itself. Neither
- the program nor their associated files must be modified in any way. The
- complete distribution package can be compressed with LHA, LHarc or similar
- for distribution convenience. No charge must be made for use or distribution
- of this package.
-
- The complete English distribution package contains:
-
- MPMaster Executable program.
- MPMaster.DOC This file.
- MPMaster.HISTORY History of versions released since v1.0.
- MPMaster.SCHEME Electronic scheme of a very simple MIDI interface.
-
- This software is provided 'AS IS' without warranty of any kind, either
- expressed or implied. By using this package you agree to accept the entire risk
- as to the quality and performance of the program and of the MIDI interface
- described in MPMAster.SCHEME.
-
- All trademarks and Copyrights of products mentioned in this document are
- acknowledged by the author.
-
- As you can see, within the package there is an IFF screen that shows the
- scheme of a very simple MIDI interface that you can build to use with your
- computer. This interface was developed originally 6 years ago for a sequencer
- programmed in assembler for my Sinclair Spectrum +3. This circuit is so small
- that can be placed inside the case of the DB-25 connector (the Spectrum version
- of the interface fitted inside a DB-9 case). Is strictly prohibited the use of
- this circuit for commercial purposes, that means that the interface must be
- built for personal use only.
-
-
-
- REQUIREMENTS
-
- This program needs WorkBench 2.04 (version 37) or higher to run.
-
- Eventually you will need a MIDI interface and one or more MIDI devices to
- connect with the computer.
-
-
-
- INTRODUCTION
-
- This program is called MIDI Packet Master (MPMaster for short) and its main
- purpose is to transmit/receive samples between an Amiga computer an a MIDI
- device that supports this kind of transference (originally programmed for use
- with a Yamaha SY85 synthesizer).
-
-
-
- MIDI STANDARD
-
- The MIDI Sample Dump Standard splits the sample in small packets (127 bytes)
- that are transmitted sequentially to the destination MIDI device. This slows
- down the transference but allows error correction without repeating the whole
- sample.
-
- The main characteristics of this standard are:
-
- - Maximum sample size: 2 million sample units
- - Sample resolution: 8, 12 or 16 bits
- - Any MIDI channel can be used (1 to 16).
- - Transmission of loop parameters.
- - Control over placing of sample over the keyboard (period).
-
- Actually I don't know how works the 'Period' parameter, and the SY85 manual
- is not very explicit about the subject. If you know how it works please send
- me the information for a better implementation of the standard in the program.
-
- Consult the user's manual of your MIDI equipment for details about
- implementation and use of MIDI Sample Dump Standard.
-
-
-
- THE STANDARD IN THE PROGRAM
-
- The program can transmit and receive samples via MIDI. The main
- characteristics are:
-
- Reception:
- - Reception channel selectable (1-16)
- - Any sample resolution from 8 to 21 bits.
- - The program only saves in RAW 8 bits format.
- - Display all characteristics of sample received.
- - Detect receive errors, but don't support error retrieval yet.
- - Reception can be aborted.
-
- Transmission:
- - Transmission channel selectable (1-16), independent of receive channel.
- - Manual adjustment of loop parameters (start, end and type).
- - Sample is transmitted always in 8 bits format.
- - Transmission can be aborted.
-
- The implementation of the standard in the program is very basic, due to the
- limited information that I have about this standard.
-
-
-
- USE OF PROGRAM
-
- The program must be launched from WorkBench, because of the options saved
- inside the program's icon. If you run it from SHELL any of those options will
- be loaded. Anyway, the program will detach itself from the SHELL window and
- will run with the internal default values.
-
- Any hardware resource used by the program is allocated through the OS, that
- means, 'legally'.
-
- Be careful about multi-tasking with programs that access to the hardware
- directly, like the Dr T's KCS sequencer, because can interfere the use of this
- hardware. Usually this turns crazy the MIDI device connected with the computer.
- Anyway this case is not very usual. Even not 'professional' programs like
- Protracker 2.3 allocates correctly the serial hardware.
-
- Any kind of problem while starting the program will be reported with a
- requester and then the program will exit.
-
- The ToolTypes that can be placed in the icon are:
-
- WB_REQUESTER With this the program will open the filerequester
- in the WorkBench.
-
- PATTERN= Here we can put a pattern for the filerequester.
-
- DIR= This is the default path where will be opened the
- filerequester.
-
- FREC= Sets de default play speed for RAW samples.
-
- MAXFREC= Sets the maximum play speed allowed. Initially is
- 28867 but this may change in future chip sets.
-
- The WB_REQUESTER option is suitable for filerequesters that are AppWindows,
- that is, icons can be dropped inside the filerequester.
-
-
-
- PROGRAM'S SCREEN
-
- The program's screen is divided in 4 main parts:
-
- TRANSMISSION: Here we can control the parameters transmitted to the MIDI
- device. The gadgets are:
-
- Select.- Open the filerequester for select a RAW or IFF sample for
- transmission. When selected the sample all other gadgets will be
- set at the proper values.
-
- Frequency.- This is the playing speed of sample when we click over the
- 'Play' gadget.
-
- Waveform.- This must set the number assigned to the sample inside of
- the MIDI device. In the SY85 this sets the WAVEFORM where the sample
- will be placed.
-
- Loop start, Loop end, Loop Type.- This is the loop margin and type.
-
- Transmit.- Sends the sample currently selected. The sample is transmitted
- directly from disk. That means that you are not limited by the memory you
- have.
-
- X.- Clears the TRANSMISSION zone.
-
-
- RECEPTION: Here we can see the details about the sample received. The 3
- gadgets are:
-
- Receive.- The program waits for a sample to receive. Can de aborted with
- the stop gadget or with the space bar. The sample is placed in memory,
- so here you are limited to the amount of memory available in one
- continuous block.
-
- Save sample.- If a sample have been received you can save it in RAW8 format.
-
- X.- Clears the reception zone and frees the memory allocated for sample.
-
-
- CHANNELS: Here you can set the IN/OUT channels. The 'omni' receive channels
- means that all input channels will be read.
-
- LOWER ZONE: This is the message zone. There are two gadgets that allows
- to play the sample selected.
-
-
-
- MENUS AND KEYBOARD
-
- All gadgets with an underlined character means that pressing that character
- on the keyboard is equal to press the gadget itself. The space bar is
- equivalent to the STOP!! gadget. The HELP key will show the 'About' requester
- and the 'Esc' key will quit the program. With the TAB key you can move from one
- Integer gadget to the next, and Shift+TAB will move to the previous Integer
- gadget.
-
- In the menu you can find the 'About...' and 'Quit' options, that don't have
- equivalent gadget.
-
-
-
- TECHNICAL DATA
-
- Program written in assembler and accessing 'legally' to the hardware. Is
- stable and allows complete multi-tasking, even when transmitting/receiving.
-
- Programmed in an Amiga 500 Plus with 2 Meg of RAM, 3 disk drives and Devpac
- 3.02 assembler. This is my first program that does multi-task and the second
- that I write in assembler.
-
- Initially developed for use with a friend's Yamaha SY85 synthesizer.
-
-
-
- FUTURE IMPROVEMENTS
-
- These are the improvements that I would like to do:
-
- - Transmit/receive simultaneously.
- - Receive direct to hard disk, avoiding the memory limitations.
- - AREXX port for control of other programs from MPMaster or vice versa.
- - Option for change the transmit/receive speed (currently 31250) for
- transfers between computers or with high speed MIDI interfaces.
- - Labels for each IN/OUT channel. This is for better using in MIDI
- environments with lots of different devices, each one using one MIDI
- channel.
- - Use of powerpacker.library for compress/decompress samples.
- - Allocate of serial hardware only during transmit/receive.
- - Support for different sample formats (8 or more bits).
- - Support of Fibonacci compression in reading of IFF samples.
- - Save icons with the sample containing the received parameters.
- - On line help (if anyone thinks that the program is difficult to use).
- - Separate filerequesters for Load and Save, storing the last path used
- in each one.
- - Batch sending of samples from scripts.
- - Optional use of error retrieval messages.
- - Graphical edit of loop margin.
- - Multilingual support with locale.library.
-
- Anyway I don't know if I will implement these improvements in the program,
- depending of the information that I can get about MIDI standard and system
- libraries. Actually I don't use this program because I am not a musician nor
- I have a synthesizer.
-
-
-
- ACKNOWLEDGMENTS
-
- I wish to thank to:
-
- - Fco Javier Cocaña Galán, Leonardo Cocaña Galán and Juan A. Estela Valín
- for their friendship and suggestions.
- - Commodore-Amiga Inc for create the very best computer in the world.
- - Motorola for their powerful and flexible microprocessors.
- - Nico François for create the wonderful reqtools.library.
- - IBM and Atari for create so bad computers, making very easy my choosing
- for the Amiga.
-
-
-
- CONTACTS
-
- If you have some kind of information about the MIDI standard, different
- sample formats or any other interesting information related with the program
- then please send it to me to the address below. Anyway, if you use the program
- please let me know, because I would like to know if anyone is using it and in
- what MIDI devices the program works well, or not so well.
-
- For sending suggestions, bugs, information interchange, etc., contact me at
- the following address:
-
- Antonio J. Pomar Rosselló
- C/ Alférez Cerdá nº 13-bajos
- Palma de Mallorca 07014
- Baleares (Spain)
-
-
- Palma de Mallorca (Palma of Majorca) 24-November-1993
-
- NOTE: my knowledge of English is VERY limited, and this text is a good
- sample of this fact. Moreover, this DOC was wrote, in a hurry, based in the
- Spanish version. If you know Spanish, I recommend you to read the Spanish
- version of this DOC. Its much more detailed and accurate.
-